The mobile phone industry has ballooned into one of the most popular technological areas. The latest generation of mobile phone technology is known as the General Packet Radio Service (GPRS), which employs packet switching to allow mobile phones and pocket communication terminals to connect directly to remote networks via the Internet, at much higher bandwidths than older systems. Unlike the older cellular circuit switched data services, GPRS is an “always on” service that does not require the use of a dial-up modem.
GPRS works by overlaying a packet switched data service on top of a circuit switched digital GSM telephone connection, which means that channel bandwidth is consumed only when users are actually sending or receiving data, rather than dedicating an entire channel to one use for a fixed period.
GPRS may work in conjunction with the Enhanced Data rates GSM Evolution (EDGE), which is a faster version of GSM. The EDGE standard is built upon the existing GSM standard, using the same time-division multiple access (TDMA) frame structure and existing cell arrangements.
Since the data transmissions in GPRS/EDGE networks are TDMA based on the number of active timeslots used for transmission or reception is a function of the “multislot class” of the device. The mobile terminal makes its multislot class known to the network during the registration process and it can be adjusted once the device is registered on the network. The multislot class defines the maximum number of slots assignable to downlink and uplink channels. FIG. 1 is a diagram illustrating a typical multislot class configuration table as defined in the GPRS Third Generation Partnership Project (3GPP) standard.
The network totally controls the timeslot configuration assignment to the mobile devices and, as such, the mobile device has no control over this assignment (except when it advertises its multislot class).
There are situations, however, where the network infastructure performs an ineffective assignment of timeslots based on the end user application. Broadly speaking, a network can perform an asymmetric timeslot, such as 4 timeslots for the downlink and 1 timeslot for the uplink. One example of an ineffective assignment occurs if the infrastructure effectively treats the timeslot assignment as static even after the downlink traffic goes idle. Treating the assignment as static could mean that only 1 uplink timeslot is used even when there is no downlink traffic. This results in poor uplink throughout for the end user.
Another example of an ineffective assignment occurs in fairly symmetrical applications (e.g., VoIP). Here, on occasion, the network puts the mobile device into an asymmetric configuration even though the traffic is symmetrical. VoIP traffic typically requires more than 1 uplink timeslot to be effective, and thus placement in an asymmetrical configuration would reduce its effectiveness.
These problems are exacerbated because the mobile device operating system is often not very smart—it always asks for the highest class it can. For example, mobile devices will often ask for class 10, which provides for a maximum 4 downlink slots and 2 uplink slots, with a total number of slots not exceeding 5 (see FIG. 1). This decision is made without regard to the type of traffic to the run on the device. The network then compounds this problem by assigning what it thinks is the best allocation of slots within the parameters of the class. For class 10, this typically means assigning 4 downlink slots and only 1 uplink slots. However, in certain circumstances, it might be more beneficial if the mobile device ran in class 9, as then the network could only assign 3 downlink slots and thus would be forced to assign 2 uplink slots as opposed to just 1. These circumstances leave the system completely at the mercy of the network, which has little or no information about the application traffic profile requirement, and yet has to make decisions regarding the class it will assign the device and the configuration of downlink slots and uplink slots it will select within the class.
What is needed is a solution that allows for a more effective assignment of timeslots in a wireless network.